package com.zb.utils;

import java.lang.reflect.Field;
import java.util.Arrays;
import java.util.Set;
import java.util.stream.Collectors;

/**
 * @Author WEN
 * @Date 2024/4/26 0026
 **/
public class ZbExcelFieldUtil {

    /**
     * 判断整行单元格数据是否均为空
     * @param obj
     * @return 返回结果：false：不为空，true-空值
     */
    public static boolean isLineNullValue(Object obj) {
        if (null == obj) {
            return true;
        }
        try {
            //通过反射获取所有excel上传需要的字段
            Set<Field> fields = Arrays.stream(obj.getClass().getDeclaredFields()).collect(Collectors.toSet());
            for (Field field : fields) {
                //设置反射对象为可访问
                field.setAccessible(true);
                if (field.get(obj) != null) {
                    return false;
                }
            }
            return true;
        } catch (Exception e) {
        }
        return true;
    }
}
